home *** CD-ROM | disk | FTP | other *** search
/ Apple WWDC 1996 / WWDC96_1996 (CD).toast / Technology Materials / MacOS 8 Resources / Developer Tools / Mac OS 8 Interfaces & Libraries / Interfaces / PInterfaces / ADBPlugin.p < prev    next >
Text File  |  1996-05-01  |  4KB  |  125 lines

  1. {
  2.      File:        ADBPlugin.p
  3.  
  4.      Version:    Technology:    
  5.                  Release:    Universal Interfaces 3.0d3 on Copland DR1
  6.  
  7.      Copyright:    © 1984-1996 by Apple Computer, Inc.  All rights reserved.
  8.  
  9.      Bugs?:        If you find a problem with this file, send the file and version
  10.                  information (from above) and the problem description to:
  11.  
  12.                      Internet:    apple.bugs@applelink.apple.com
  13.                      AppleLink:    APPLE.BUGS
  14.  
  15. }
  16. {$IFC UNDEFINED UsingIncludes}
  17. {$SETC UsingIncludes := 0}
  18. {$ENDC}
  19.  
  20. {$IFC NOT UsingIncludes}
  21.  UNIT ADBPlugin;
  22.  INTERFACE
  23. {$ENDC}
  24.  
  25. {$IFC UNDEFINED __ADBPLUGIN__}
  26. {$SETC __ADBPLUGIN__ := 1}
  27.  
  28. {$I+}
  29. {$SETC ADBPluginIncludes := UsingIncludes}
  30. {$SETC UsingIncludes := 1}
  31.  
  32. {$IFC UNDEFINED __TYPES__}
  33. {$I Types.p}
  34. {$ENDC}
  35. {$IFC UNDEFINED __ADB__}
  36. {$I ADB.p}
  37. {$ENDC}
  38.  
  39. {$PUSH}
  40. {$ALIGN POWER}
  41. {$LibExport+}
  42.  
  43. {$IFC FOR_SYSTEM8_PREEMPTIVE }
  44. {
  45. ------------------------------------------------------------------------------------
  46.   Calls exported by the Family
  47. ------------------------------------------------------------------------------------
  48. }
  49. PROCEDURE ADBFamRequestComplete(theStatus: OSStatus); C;
  50. PROCEDURE ADBFamAutopollArrived(deviceAddress: ByteParameter; {CONST}VAR contents: ADBRegisterContents); C;
  51. {
  52. ------------------------------------------------------------------------------------
  53.   Plugin Dispatch Table
  54. ------------------------------------------------------------------------------------
  55. }
  56.  
  57. TYPE
  58.     ADBPluginInitProc = ProcPtr;  { FUNCTION ADBPluginInitProc: OSStatus; C; }
  59.  
  60.     ADBPluginSetAutopollDelayProc = ProcPtr;  { FUNCTION ADBPluginSetAutopollDelayProc(delay: Duration): OSStatus; C; }
  61.  
  62.     ADBPluginGetAutopollDelayProc = ProcPtr;  { FUNCTION ADBPluginGetAutopollDelayProc(VAR delay: Duration): OSStatus; C; }
  63.  
  64.     ADBPluginSetAutopollListProc = ProcPtr;  { FUNCTION ADBPluginSetAutopollListProc(addressMask: UInt16): OSStatus; C; }
  65.  
  66.     ADBPluginGetAutopollListProc = ProcPtr;  { FUNCTION ADBPluginGetAutopollListProc(VAR addressMask: UInt16): OSStatus; C; }
  67.  
  68.     ADBPluginAutopollEnableProc = ProcPtr;  { FUNCTION ADBPluginAutopollEnableProc: OSStatus; C; }
  69.  
  70.     ADBPluginAutopollDisableProc = ProcPtr;  { FUNCTION ADBPluginAutopollDisableProc: OSStatus; C; }
  71.  
  72.     ADBPluginResetBusProc = ProcPtr;  { FUNCTION ADBPluginResetBusProc: OSStatus; C; }
  73.  
  74.     ADBPluginFlushProc = ProcPtr;  { FUNCTION ADBPluginFlushProc(deviceAddress: ByteParameter): OSStatus; C; }
  75.  
  76.     ADBPluginSetRegisterProc = ProcPtr;  { FUNCTION ADBPluginSetRegisterProc(deviceAddress: ByteParameter; registerNumber: ByteParameter; (CONST)VAR contents: ADBRegisterContents): OSStatus; C; }
  77.  
  78.     ADBPluginGetRegisterProc = ProcPtr;  { FUNCTION ADBPluginGetRegisterProc(deviceAddress: ByteParameter; registerNumber: ByteParameter; VAR contents: ADBRegisterContents): OSStatus; C; }
  79.  
  80.     ADBPluginSetKeyboardListProc = ProcPtr;  { FUNCTION ADBPluginSetKeyboardListProc(addressMask: UInt16): OSStatus; C; }
  81.  
  82.  
  83. CONST
  84.     kADBPluginVersion            = $44332211;
  85.     kADBPluginCurrentVersion    = $44332211;
  86.  
  87.  
  88. TYPE
  89.     ADBPluginHeaderPtr = ^ADBPluginHeader;
  90.     ADBPluginHeader = RECORD
  91.         version:                UInt32;
  92.         reserved1:                UInt32;
  93.         reserved2:                UInt32;
  94.         reserved3:                UInt32;
  95.     END;
  96.  
  97.     ADBPluginDispatchTablePtr = ^ADBPluginDispatchTable;
  98.     ADBPluginDispatchTable = RECORD
  99.         header:                    ADBPluginHeader;
  100.         Init:                    ADBPluginInitProc;
  101.         SetAutopollDelay:        ADBPluginSetAutopollDelayProc;
  102.         GetAutopollDelay:        ADBPluginGetAutopollDelayProc;
  103.         SetAutopollList:        ADBPluginSetAutopollListProc;
  104.         GetAutopollList:        ADBPluginGetAutopollListProc;
  105.         AutopollEnable:            ADBPluginAutopollEnableProc;
  106.         AutopollDisable:        ADBPluginAutopollDisableProc;
  107.         ResetBus:                ADBPluginResetBusProc;
  108.         Flush:                    ADBPluginFlushProc;
  109.         SetRegister:            ADBPluginSetRegisterProc;
  110.         GetRegister:            ADBPluginGetRegisterProc;
  111.         SetKeyboardList:        ADBPluginSetKeyboardListProc;
  112.     END;
  113.  
  114. {$ENDC}
  115. {$ALIGN RESET}
  116. {$POP}
  117.  
  118. {$SETC UsingIncludes := ADBPluginIncludes}
  119.  
  120. {$ENDC} {__ADBPLUGIN__}
  121.  
  122. {$IFC NOT UsingIncludes}
  123.  END.
  124. {$ENDC}
  125.